package de.fhdw.hbs.entity.pojo;

import java.io.Serializable;

/**
 * 
 * @author stephan
 *
 * POJO
 */
public class Hotel implements Serializable{
	/**
	 * 
	 */
	private static final long serialVersionUID = 1L;
	//Attribute
	private int id;
	private String name;
	private String strasse;
	private String plz;
	private String ort;
	private String land;
	private String tel;
	private String fax;
	private String url;
	private int kategorie;
	private String beschreibung;
	private Bewertung[] bewertungen;
	private int anzahl_dz;
	private int anzahl_ez;
	private int anzahl_dz_verfuegbar;
	private int anzahl_ez_verfuegbar;
	private float preis_ez;
	private float preis_dz;
	
	//Methoden
	
	public boolean equals(Object obj) {
		if (obj == this) {
			return true;
		}
		if (obj == null || obj.getClass() != this.getClass()) {
			return false;
		}

		Hotel h = (Hotel) obj;
		return (this.getId() == h.getId());
	}
	
	public int getId() {
		return id;
	}

	public void setId(int id) {
		this.id = id;
	}

	public String getName() {
		return name;
	}

	public void setName(String name) {
		this.name = name;
	}

	public String getStrasse() {
		return strasse;
	}

	public void setStrasse(String strasse) {
		this.strasse = strasse;
	}

	public String getPlz() {
		return plz;
	}

	public void setPlz(String plz) {
		this.plz = plz;
	}

	public String getOrt() {
		return ort;
	}

	public void setOrt(String ort) {
		this.ort = ort;
	}

	public String getLand() {
		return land;
	}

	public void setLand(String land) {
		this.land = land;
	}

	public String getTel() {
		return tel;
	}

	public void setTel(String tel) {
		this.tel = tel;
	}

	public String getFax() {
		return fax;
	}

	public void setFax(String fax) {
		this.fax = fax;
	}

	public String getUrl() {
		return url;
	}

	public void setUrl(String url) {
		this.url = url;
	}

	public int getKategorie() {
		return kategorie;
	}

	public void setKategorie(int kategorie) {
		this.kategorie = kategorie;
	}

	public String getBeschreibung() {
		return beschreibung;
	}

	public void setBeschreibung(String beschreibung) {
		this.beschreibung = beschreibung;
	}

	public Bewertung[] getBewertungen() {
		return bewertungen;
	}

	public void addBewertung(Bewertung bewertung) {
		for(int i=0; i < bewertungen.length ; i++) {
			if (bewertungen[i] == null) {
				bewertungen[i] = bewertung;
			}
		}
	}

	public int getAnzahl_dz() {
		return anzahl_dz;
	}

	public void setAnzahl_dz(int anzahl_dz) {
		this.anzahl_dz = anzahl_dz;
	}

	public int getAnzahl_ez() {
		return anzahl_ez;
	}

	public void setAnzahl_ez(int anzahl_ez) {
		this.anzahl_ez = anzahl_ez;
	}

	public int getAnzahl_dz_verfuegbar() {
		return anzahl_dz_verfuegbar;
	}

	public void setAnzahl_dz_verfuegbar(int anzahl_dz_verfuegbar) {
		this.anzahl_dz_verfuegbar = anzahl_dz_verfuegbar;
	}

	public int getAnzahl_ez_verfuegbar() {
		return anzahl_ez_verfuegbar;
	}

	public void setAnzahl_ez_verfuegbar(int anzahl_ez_verfuegbar) {
		this.anzahl_ez_verfuegbar = anzahl_ez_verfuegbar;
	}

	public float getPreis_ez() {
		return preis_ez;
	}

	public void setPreis_ez(float preis_ez) {
		this.preis_ez = preis_ez;
	}

	public float getPreis_dz() {
		return preis_dz;
	}

	public void setPreis_dz(float preis_dz) {
		this.preis_dz = preis_dz;
	}
	
	
	//Konstruktoren
	public Hotel(int id, String name, String strasse, String plz, String ort,
			String land, String tel, String fax, String url, int kategorie,
			String beschreibung, Bewertung[] bewertungen,
			int anzahl_dz, int anzahl_ez, int anzahl_dz_verfuegbar,
			int anzahl_ez_verfuegbar, float preis_ez, float preis_dz) {
		super();
		this.id = id;
		this.name = name;
		this.strasse = strasse;
		this.plz = plz;
		this.ort = ort;
		this.land = land;
		this.tel = tel;
		this.fax = fax;
		this.url = url;
		this.kategorie = kategorie;
		this.beschreibung = beschreibung;
		this.bewertungen = bewertungen;
		this.anzahl_dz = anzahl_dz;
		this.anzahl_ez = anzahl_ez;
		this.anzahl_dz_verfuegbar = anzahl_dz_verfuegbar;
		this.anzahl_ez_verfuegbar = anzahl_ez_verfuegbar;
		this.preis_ez = preis_ez;
		this.preis_dz = preis_dz;
	}

	public Hotel() {
		super();
	}
	
}
